iT邦幫忙

2023 iThome 鐵人賽

DAY 22
0
Security

資通安全管理法入門系列 第 22

[Day 22] SSDLC-開發階段

  • 分享至 

  • xImage
  •  

開發階段

在許多開發情境中,業務部門常常提出功能需求,而資訊部門則著手開發。常常從一開始就忽略資安問題,這使得許多前期防範措施被忽略。

然而,若在開發過程中整合源碼掃描工具,可以有效地解決並預防部分的資安問題。

關鍵在於,源碼掃描應該在開發階段進行,而不是等到即將上線或部署時。如果在部署前的最後階段進行掃描並發現上千個安全漏洞,那麼是否修復這些漏洞都將是個困擾。

因此,建議每週定期,例如每週五下班前,執行源碼掃描,下週上班時可以審查和處理掃描報告。

開發過程中除了定期進行源碼掃描,以下提供一些安全上的建議與思維,協助確保開發過程的安全性:

  1. JavaScript防呆不防駭:雖然JavaScript可以做前端資料檢查,但駭客可以輕易繞過這些檢查並直接向伺服器發送任意數據。
  2. 更新第三方元件:熱門的第三方元件常受到駭客關注,一旦有漏洞,常在CVE中公布。使用過時的元件就等同於公開邀請駭客。
  3. 透過HTTP header增加XSS防護:儘管我們的程式碼可能不完美,但通過設定如CSP、HTTPonly等HTTP header,可以提供額外的XSS防護。
  4. 白名單優於黑名單:以白名單為主要策略,只允許已知和可信任的源訪問,相對於黑名單,白名單更不容易遺漏安全威脅。
  5. 確保機敏資料安全:例如,密碼應該進行hash加密,絕不應該以明文或單純編碼方式儲存。
  6. 謹慎提供上傳功能:上傳功能容易被駭客利用。即使你僅允許上傳特定類型,例如圖片,駭客仍可能注入惡意程式。如果必須提供,記得更改檔名並設定適當的存取權限。

開發人員的邏輯或許無懈可擊,但我們必須記住:駭客的行為方式不是一般使用者。他們不會在你的邏輯閉環裡打轉,而是會不斷尋找系統的漏洞,進行各種測試和攻擊。

因此,開發者只能透過持續學習、經驗累積,並從過去的失誤中吸取教訓,以提高軟體的安全性。


上一篇
[Day 21] SSDLC-系統設計
下一篇
[Day 23] SSDLC-測試與部署
系列文
資通安全管理法入門31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言